Calculating Quantitative Integrity and Secrecy for Imperative Programs
نویسندگان
چکیده
This paper presents a framework for calculating measures of data integrity for programs in a small imperative language. We develop a Markov chain semantics for our language which calculates Clarkson and Schneider’s definitions of data contamination, data suppression, program suppression and program transmission. We then propose our own definition of program integrity for probabilistic specifications. These definitions are based on conditional mutual information and entropy; we present a result relating them to mutual information, which can be calculated by a number of existing tools. We extend a quantitative information flow tool (CH-IMP) to calculate these measures of integrity and demonstrate this tool with examples including on error correcting codes, the Dining Cryptographers protocol and the attempts by a number of banks to influence the Libor rate.
منابع مشابه
Automatically Calculating Quantitative Integrity Measures for Imperative Programs
This paper presents a framework for calculating measures of data integrity for programs in a small imperative language. We develop a Markov chain semantics for our language which calculates Clarkson and Schneider’s definitions of data contamination and suppression. These definitions are based on conditional mutual information and entropy; we present a result relating them to mutual information,...
متن کاملSecure Information Flow via Linear Continuations
Security-typed languages enforce secrecy or integrity policies by type-checking. This paper investigates continuation-passing style (CPS) as a means of proving that such languages enforce noninterference and as a first step towards understanding their compilation. We present a low-level, secure calculus with higher-order, imperative features and linear continuations. Linear continuations impose...
متن کاملSecure Information Flow and CPS
Security-typed languages enforce secrecy or integrity policies by type-checking. This paper investigates continuation-passing style as a means of proving that such languages enforce non-interference and as a first step towards understanding their compilation. We present a lowlevel, secure calculus with higher-order, imperative features. Our type system makes novel use of ordered linear continua...
متن کاملInfluence: A Quantitative Approach for Data Integrity
A number of systems employ dynamic taint analysis to detect overwrite attacks in commodity software. These systems are based on the premise that low-integrity inputs should not control values such as function pointers and return addresses. Unfortunately, there are several programming constructs that can cause false positives and false negatives in these systems, which are currently handled by m...
متن کاملProgram Verification by Calculating Relations
We show how properties of an interesting class of imperative programs can be verifed by means of relational modelling and symbolic computation.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IJSSE
دوره 6 شماره
صفحات -
تاریخ انتشار 2015